A circuit switched network usually includes multiple switch nodes which are arranged in a topology referred to in the art as a “shared mesh network”. Within the shared mesh network, user traffic can be transported between any two locations using predefined connections specifying particular links and/or switch nodes for conveying the user traffic.
The switch nodes are each provided with a control module. The control modules of the switch nodes function together to aid in the control and management of the circuit switched networks. The control modules can run a variety of protocols for conducting the control and management of the circuit switched networks. One prominent protocol is referred to in the art as “Generalized Multiprotocol Label Switching (GMPLS)”.
Generalized Multiprotocol Label Switching (GMPLS) includes multiple types of optical channel data unit label switched paths including protection and recovery mechanisms which specifies predefined (1) working connections within a shared mesh network having multiple nodes and communication links for transmitting data between a headend node and a tailend node; and (2) protecting connections specifying a different group of nodes and/or communication links for transmitting data between the headend node to the tailend node in the event that one or more of the working connections fail. A protecting connection may also be referred to as a protection path. A first node of a path is referred to as a headend node. A last node of a path is referred to as a tailend node. Data is initially transmitted over the optical channel data unit label switched path, referred to as the working connection, and then, when a working connection fails, the headend node or tailend node activates one of the protecting connections for redirecting data within the shared mesh network.
Shared Mesh Protection (SMP) is a common protection and recovery mechanism in transport networks, where multiple paths can share the same set of network resources for protection purposes.
An exemplary mesh network 20 is shown in FIG. 1, by way of example. In FIG. 1, the mesh network 20 includes switch nodes 22 (hereinafter referred to as “nodes” 22) and labeled as A, B, C, D, E, F, G, H, I, J and K. Some of the nodes 22 are denoted as a headend node 24 or tailend node 26 for a particular path in accordance to the path setup direction. Other nodes 22 are known as intermediate nodes 28. In this example, the mesh network 20 includes headend nodes 24-A and 24-K; tailend nodes 26-D and 26-H; and intermediate nodes 28-B, 28-C, 28-E, 28-F, 28-G, 28-I, and 28-J. The mesh network 20 in FIG. 1 also includes two working connections 30a and 30b; and two protecting connections 32a and 32b. Thus, the working connections 30a and 30b are formed by the nodes {24-A, 28-B, 28-C, 26-D}, and {24-K, 28-J, 28-I, 26-H} respectively; and the protecting connections 32a and 32b are formed by the nodes {24-A, 28-E, 28-F, 28-G, 26-D}, and {24-K, 28-G, 28-F, 28-E, 26-H} respectively. Connections are established via control planes prior to a failure of the mesh network 20. The switch nodes A-K are coupled by communication links 34a-k, which can be fiber optic cables, electronics cables, wireless communication links, or the like.
In this example, the communication links 34f and 34e between intermediate nodes 28-E, 28-F and 28-G are shared by both protecting connections 32a and 32b. The working connections 30 and the protecting connections 32 can be established by the nodes A-K using GMPLS protocols prior to any network failure. The working connections 30 and the protecting connections 32 may be bi-directional or co-routed.
In Shared Mesh Protection, initially operators set up both working connections 30 and protecting connections 32. During setup, operators specify the network resources, for example, switch nodes A-K, communication links 34, and timeslots, for each connection. The operators will activate the working connections 30 with the appropriate resources on the intermediate nodes 28; however, the protecting connections 32 will be reserved but the resources on the intermediate nodes 28, will not be initially activated. Depending on network planning requirements, such as Shared Risk Link Group (SRLG), protecting connections 32 may share the same set of resources on intermediate nodes 28-E, 28-F, and 28-G. The resource assignment is a part of the control-plane Connection Admission Control (CAC) operation taking place on each node.
Upon detection of working connection 30 failure (for example, if the communication link 34b between intermediate nodes 28-B and 28-C is cut), the edgenode (headend node 24-A and/or tailend node 26-D) will transmit the activation messages to activate the protecting connection 32. By processing the activation messages, the intermediate nodes (28-E, 28-F, and 28-G) will program the switch fabric and configure the appropriate resources. Upon the completion of the activation, the edgenode (for example, headend node 24-A) will switch the user traffic to the protecting connection 32.
In general, logical tables in one or more databases may be used to support protecting connection 32 activation logic. Preferably, the tables include one or more connection tables, one or more logical timeslot tables, and one or more real timeslot tables. The connection table(s) maintains the connection-related information, including label, interfaces, and associated timeslot information for the connections. The logical timeslot table(s) is a timeslot translation table(s) between connections and timeslots. The real timeslot table(s) maintains the timeslot-related information, including the active connections that are currently conveying traffic and reserved connections for all timeslots. A reserved connection means there is not any active traffic on the timeslot. In the situation where a protecting connection 32 is identified in the connection table, the protecting connection's associated timeslots can be readily discovered utilizing the logic timeslot table and the real timeslot table.
If there is a consistent definition of priority levels among the paths throughout the mesh network 20, then, at activation time, each node 22 may rely on the priority levels to potentially preempt other paths.
The protecting connections 32 play an important role in Shared Mesh Protection. However, there is no standard method in detecting the liveliness and synchronizing the control plane and data plane on the protecting connections 32. Additionally, though providing Operation, Administration and Maintenance (OAM) on data connections, i.e. working connections 30, is a common practice in circuit and packet networks, there is no known method in applying OAM on protecting connections 32 that may or may not be active to transport user traffic.
Further, control plane and data plane synchronization is very important in Shared Mesh Protection (SMP) Operation, Administration and Maintenance. Without proper synchronization, user traffic could be directed to the wrong place and lost. For example, due to hardware or software errors (for instance, memory corruption) on an intermediate node 28, the Shared Mesh Protection activation messages may lead the protecting connection 32 to the wrong path at the data plane. This is commonly known as the “black hole” problem in network operation. Additionally, without some sort of control plane to data plane synchronization tool in place, operators cannot easily detect the failure of connections. Current methodologies to address the issue of the black hole problem for working connections 30 include LSP-ping (Reference RFC4379); however, methodology is needed to address the issue of the black hole problem for protecting connections 32.